﻿using DTOs;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace RBAC.Domain.Service.Interfae
{
    public interface IRoleService
    {
        /// <summary>
        /// 添加角色
        /// </summary>
        /// <param name="role"></param>
        /// <returns></returns>
        Task<int> AddRoles(Roles role);
        /// <summary>
        /// 删除角色
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        Task<int> DelRole(Roles roles);
        /// <summary>
        /// 显示角色列表
        /// </summary>
        /// <returns></returns>
        Task<PageDto<Roles>> GetRoleAsync(int pageSize, int pageIndex);
        /// <summary>
        /// 修改角色
        /// </summary>
        /// <param name="role"></param>
        /// <returns></returns>
        Task<int> UpdateRole(Roles role);
        /// <summary>
        /// 反填
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        Task<Roles> GetRoleByValues(Roles role);
        /// <summary>
        /// 查询部门下的员工
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        Task<List<Menument>> GetUserRole(List<int> ids);
        /// <summary>
        /// 反填（从Token中取角色ID）1
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        Task<Roles> GetRoleAlls(int id);



    }
}
